Technical Field
The present invention relates generally to circuit synthesis and, in particular, to enhanced parameter tuning for very-large-scale integration synthesis.
Description of the Related Art
The design of modern digital very-large-scale integration (VLSI) circuits increasingly relies on circuit synthesis techniques. Even high-performance critical components that were conventionally implemented using custom design techniques (i.e., those based on schematic entry followed by placement and routing as opposed to synthesis which automates the design process beginning at the Register Transfer Level (RTL)) are now being synthesized using advanced synthesis tools. Improving design productivity and enhancing design flexibility are just a few of the benefits of synthesis-centric design methodologies. However, the shift from custom design to synthesis requires that synthesis tools tackle more difficult designs. Furthermore, as technology scaling provides diminishing performance improvements in advanced nodes, there is a greater need to optimize the synthesis results to realize the performance goals of a chip.
Advanced synthesis tools provide a large number of knobs, settings, and parameters that can greatly impact the quality of results for a specific design. The number of tunable parameters in a synthesis tool can be on the order of hundreds or even thousands of options in some cases. Quite often fine tuning many of these options is needed to achieve the quality of results needed for modern VLSI circuits. In fact, the modification of parameters can have such a large impact on the quality of results, that tuning synthesis parameters is one of most effective approaches to design optimization. In many cases, parameter tuning can lead to a wide range of quality of results, with a marked increase in quality achievable (over default synthesis results) by modifying synthesis parameters in terms of timing and power.
However, while varying parameter settings can have a large impact on the quality of results, the process of finding the correct parameter settings can often be tedious and non-intuitive for even experienced human designers. Novice designers often find that manually trying to determine the correct parameter settings is an even more daunting task.
Thus, techniques for automating the process of tuning synthesis parameters would be desirable.